package cn.yuanqiao.archive.collection.appManager.mapper;

import cn.yuanqiao.archive.collection.appManager.domain.YqDataCategory;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 资料树类别Mapper接口
 *
 * @ProjectName: ruoyi-modules-system
 * @Package: cn.yuanqiao.archive.appManager.mapper
 * @ClassName: YqDataCategoryMapper
 * @Author: lenovo
 * @Description: hbWang
 * @Date: 2023/7/28 14:12
 * @Version: 1.0
 */
public interface YqDataCategoryMapper {
    /**
     * 查询资料树类别
     *
     * @param id 资料树类别主键
     * @return 资料树类别
     */
    public YqDataCategory selectYqDataCategoryById(@Param("id") String id, @Param("tableName") String tableName);

    /**
     * 根据资料树code查询资料树类别信息
     *
     * @param categoryCode  资料树类别code
     * @param tableName
     * @return
     */
    public List<YqDataCategory> selectYqDataCategoryByTreeCode(@Param("treeCode") String categoryCode,
                                                               @Param("tableName") String tableName);
    /**
     * 根据资料树code查询资料树类别信息
     *
     * @param categoryCode  资料树类别code
     * @param tableName
     * @return
     */
    public List<YqDataCategory> selectYqDataCategoryByCategoryCode(@Param("categoryCode") String categoryCode,
                                                               @Param("tableName") String tableName);

    /**
     * 查询资料树类别列表
     *
     * @param category 资料树类别
     * @return 资料树类别集合
     */
    public List<YqDataCategory> selectYqDataCategoryList(@Param("category") YqDataCategory category, @Param("tableName") String tableName);

    /**
     * 新增资料树类别
     *
     * @param category 资料树类别
     * @return 结果
     */
    public int insertYqDataCategory(@Param("category") YqDataCategory category, @Param("tableName") String tableName);

    /**
     * 修改资料树类别
     *
     * @param category 资料树类别
     * @return 结果
     */
    public int updateYqDataCategory(@Param("category") YqDataCategory category, @Param("tableName") String tableName);

    /**
     * 删除资料树类别
     *
     * @param id 资料树类别主键
     * @return 结果
     */
    public int deleteYqDataCategoryById(@Param("id") String id, @Param("tableName") String tableName);

    /**
     * 批量删除资料树类别
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteYqDataCategoryByIds(@Param("ids") String[] ids, @Param("tableName") String tableName);
}
